System and method for automatically analyzing gene expression spots in a microarray

ABSTRACT

A digital image processing-based system and method are disclosed for quantitatively assessing nucleic acid species expressed in a microarray. The microarray is a grid of a plurality of sub-grids of the nucleic acid species. The system includes a scanner that has a digital scanning sensor that-scans the microarray and transmits from an output a digital image of the microarray, and a computer that receives the digital image of the microarray from the scanner and then processes the digital image, detecting an expression signal of the nucleic acid species, segmenting the expression signal, calculating a measure of the segmented expression signal, and providing the measure at the output of the computer. Prior to segmenting the expression signal for a nucleic acid species, the expression signal is characterized by a center pixel in the digital image and an approximate radius around the center pixel. The computer segments the expression signal by (a) tentatively classifying pixels within the approximate radius as signal pixels and those outside the approximate radius as background pixels, (b) determining major intensity modes for the signal pixels and for the background pixels, and (c) using the major intensity modes, reclassifying the signal and background pixels depending on each pixel&#39;s intensity relative to the major intensity modes.

This application claims priority to U.S. Provisional Application SerialNo. 60/157,099 filed Sep. 30, 1999 and having the same title andinventorship as the present application.

BACKGROUND OF THE INVENTION

The field of the present invention relates to the image processing ofgene expression microarrays. In particular, the invention relates toautomatically identifying detected gene expression spots in amicroarray.

A cell relies on proteins for a variety of its functions. Producingenergy, biosynthesizing all component macromolecules, maintainingcellular architecture, and acting upon intra- and extracellular stimuliare all protein dependent activities. Almost every cell within anorganism contains the information necessary to produce the entirerepertoire of proteins that that organism can specify. This informationis stored as genes within the organism's DNA genome. Different organismshave different numbers of genes to define them. The number of humangenes, for example, is estimated to be between 30,000 and 100,000.

Only a portion of the genome is composed of genes, and the set of genesexpressed as proteins varies between cell types. Some of the proteinspresent in a single cell are likely to be present in all cells becausethey serve functions required in every type of cell. These proteins canbe thought of as “housekeeping” proteins. Other proteins servespecialized functions that are only required in particular cell types.Such proteins are generally produced only in limited types of cells.Given that a large part of a cell's specific functionality is determinedby the genes that it is expressing, it is logical that transcription,the first step in the process of converting the genetic informationstored in an organism's genome into protein, would be highly regulatedby the control network that coordinates and directs cellular activity.

The regulation of transcription is readily observed in studies thatscrutinize activities evident in cells configuring themselves for aparticular function (specialization into a muscle cell) or state (activemultiplication or quiescence). As cells alter their state, coordinatetranscription of the protein sets required for the change of state canbe observed. As a window both on cell status and on the systemcontrolling the cell, detailed, global knowledge of the transcriptionalstate could provide a broad spectrum of information useful tobiologists. For instance, knowledge of when and in what types of cellthe protein product of a gene of unknown function is expressed wouldprovide useful clues as to the likely function of that gene.Furthermore, determining gene expression patterns in normal cells couldprovide detailed knowledge of how the control system achieves the highlycoordinated activation and deactivation required to develop anddifferentiate a single fertilized egg into a mature organism. Also,comparing gene expression patterns in normal and pathological cellscould provide useful diagnostic “fingerprints” and help identifyaberrant functions that would be reasonable targets for therapeuticintervention.

The ability to perform studies that determine the transcriptional stateof a large number of genes has, however, until recently, been severelyinhibited by limitations on the ability to survey cells for the presenceand abundance of a large number of gene transcripts in a singleexperiment. A primary limitation has been the small number of identifiedgenes. In humans, only a few thousand of the complete set have beenphysically purified and characterized to any extent. Another significantlimitation has been the cumbersome nature of transcription analysis.Even a large experiment on human cells can track expression of only adozen genes, clearly an inadequate sampling to make any meaningfulinferences about so complex a control system.

Two recent technological advances have provided the means to overcomesome of these limitations in examining the patterns and relationships ingene transcription. The cloning of molecules derived from MRNAtranscripts in particular tissues, followed by the application ofhigh-throughput sequencing to the DNA ends of the members of theselibraries has yielded a catalog of expressed sequence tags (ESTs). M. S.Boguski and G. D. Schuler, “Establishing a Human Transcript Map,” NatureGenetics 10(4), 369-371 (1995). These signature sequences provideunambiguous identifiers for a large cohort of genes. At present,approximately 40,000 human genes have been “tagged” by this route, andmany have been mapped to their genomic location. G. D. Schuler, M. S.Boguski, et al., “A Gene Map of the Human Genome,” Science 274(5287),540-546 (1996).

In addition, the clones from which these sequences were derived provideanalytical reagents that can be used in the quantitation of transcriptsfrom biological samples. Specifically, the nucleic acid polymers, DNAand RNA, are biologically synthesized in a copying reaction in which onepolymer serves as a template for the synthesis of an opposing strand,which is termed its complement. Even after separation from each other,these strands can be induced to pair quite specifically with each otherto form a very tight molecular complex in a process calledhybridization. This specific binding is the basis of most analyticalprocedures for quantitating the presence of a particular species ofnucleic acid, such as the mRNA specifying a particular protein geneproduct.

Furthermore, the recent development of microarray technology, ahybridization-based process, has begun to enable the simultaneousquantitation of many nucleic acid species, even genome-widequantitation. M. Schena, D. Shalon, R. W. Davis, and P. O. Brown,“Quantitative Monitoring of Gene Expression Patterns With aComplementary DNA Microarray,” Science 270(5235), 467-470, (1995), J.DeRisi, L. Penland, P. O. Brown, M. L. Bittner, P. S. Meltzer, M. Ray,Y. Chen, Y. A. Su, and J. M. Trent, “Use of a cDNA Microarray to AnalyzeGene Expression Patterns in Human Cancer,” Nature Genetics 14(4),457-460 (1996), M. Schena, D. Shalon, R. Heller, A. Chai, P. O. Brown,and R. W. Davis, “Parallel Human Genome Analysis: Microarray-basedExpression Monitoring of 1000 Genes,” Proc. Nat. Acad. Sci.U.S.A.93(20), 10614-10619 (1996). For mRNA expression studies, the goalis to develop microarrays that contain every gene in a genome againstwhich mRNA expression levels can be quantitatively assessed. Thistechnology combines robotic placement (spotting) of small amounts ofindividual, pure nucleic acid species on a glass slide, hybridization tothis array with multiple fluorescently labeled nucleic acids, andtraditionally, detection and quantitation of the resulting fluor-taggedhybrids with a scanning confocal fluorescent microscope. When used todetect transcripts, a particular RNA transcript (an mRNA) is copied intoDNA (a cDNA) and this copied form of the transcript is immobilized on aglass slide. The entire complement of transcript mRNAs present in aparticular cell type is extracted from cells and then a fluor-taggedcDNA representation of the extracted mRNAs is made in vitro by anenzymatic reaction termed reverse transcription. Fluor-taggedrepresentations of mRNA from several cell types, each tagged with afluor emitting a different color light, are hybridized to the array ofcDNAs and then fluorescence at the site of each immobilized cDNA isquantitated.

The various characteristics of this analytic method make it particularlyuseful for directly comparing the abundance of mRNAs present in two celltypes. An example of such a system is presented in FIG. 1. In thisexperiment, an array of cDNAs was hybridized with a green fluor-taggedcollection of mRNAs extracted from a tumorigenic melanoma cell line(UACC-903) and a red fluor-tagged collection of mRNAs was extracted froma nontumorigenic derivative of the original cell line (UACC-903+6). J.DeRisi, L. Penland, P. O. Brown, M. L. Bittner, P. S. Meltzer, M. Ray,Y. Chen, Y. A. Su, and J. M. Trent, “Use of a cDNA Microarray to AnalyzeGene Expression Patterns in Human Cancer,” Nature Genetics 14(4),457-460 (1996). Monochrome images of the fluorescent intensity observedfor each of the fluors are then combined by placing each image in theappropriate color channel of a red-green-blue (RGB) image. Intense redfluorescence at a spot indicates a high level of expression of that genein the nontumorigenic cell line, with little expression of the same inthe tumorigenic parent. Conversely, intense green fluorescence at a spotindicates high expression of that gene in the tumorigenic line, withlittle expression in the nontumorigenic daughter line. When both celllines express a gene at similar levels, the observed array spot isyellow.

Visual inspection of the results with, for example, a scanningmicroscope, is adequate to analyze genes where there is a very largedifferential rate of expression. A more thorough study of the changes inexpression requires the ability to discern more subtle changes inexpression level and to determine whether observed differences are theresult of random variation or whether they are characteristic of thegene being expressed. For this level of analysis, a visualinspection-based methodology is generally inadequate.

Moreover, advances in microarray technology have made using a visualinspection-based methodology even more impractical. Microarraygeneration systems are in place to produce over 10,000 spots on a singlemicroscope slide. A hybridization experiment using one such slide yieldsan expression profile of thousands of genes. Thus, these systems producemassive amounts of information. The massive output of data makespossible high-throughput gene expression analysis at an acceptable costand enables a more efficient study of the interaction andinterrelationships of thousands of genes. If the information can beefficiently processed and analyzed, the results can potentially yield acomplete understanding of the genomic functions in biological systems.Using visual inspection to quantitate the expression levels, however, isfar too cumbersome, time-consuming and imprecise to effectively analyzethese data-rich slides. Thus, along with the opportunities created bythe rapid advancement in microarray generation technology, a managementof information or “informatics” problem has arisen.

The application of digital image processing technology has largely beenadopted as the avenue for solving the informatics problem. Using digitalimage processing, images of the microarray slides are digitally capturedand analyzed using a high-speed computer. A typical microarray imagedepicts bright spots arranged in sets of sub-grids against a darkbackground. Typically, the sub-grids in a microarray image have the samenumber of rows and columns of spots. Normally, the sub-grids in amicroarray image are arranged as a grid of sub-grids, or “meta-grid.”

Theoretically, processing a microarray image containing a meta-grid ofspots is straightforward. First, the individual sub-grids in themeta-grid are detected. Then, for each detected sub-grid, the spots inthe sub-grid are detected. Once the spots are located, their intensitiesreflecting the gene expression levels are measured. Finally, thereliability of the measurements for each spot and each sub-grid isassessed. Under ideal conditions, a microarray image is easilyprocessed. These ideal conditions require that 1) the sub-grids within ameta-grid have the same dimensions, 2) the sub-grids be positioned in apredetermined location within a microarray image, 3) the sub-grids beequally spaced from each other, 4) rows and columns within a sub-grid beequally spaced from each other, 5) the spots be centered onsub-grid-line intersections, 6) the spots be of the same size and shape,7) the spots have intensities distinguishable from the background, and8) the slides have no contamination that appears in the microarrayimages. A simple software program can process a microarray image havingthe above “ideal” characteristics.

However, because of inherent limitations in the microarray generationhardware and process, the microarray images rarely, if ever, exhibitthese conditions. For example, the pins for generating the spots in thearray during the spotting process can be misaligned. Also, the spatialmapping between the slides and the scanned images can be offset. Theresult of these hardware imperfections is that the location of each gridin the microarray can vary from image to image and the spots will not belinearly aligned such that they are centered on grid-line intersections.Furthermore, some spots will appear to be missing from a sub-gridentirely because of gene expression levels that are too low to bemeasurable.

Besides the positioning inconsistencies, the shapes and sizes of thespots vary significantly. Such variations are again due to limitationsin the spotting hardware and process. In particular, the sizes of thedroplets of DNA solution vary, causing the sizes of the spots to vary.Second, the concentrations of DNA and salt in the spotting solution varyover time. Consequently, the shapes of the spots will deviate over timefrom a circle as the density of DNA varies within a spot. Furthermore,the contact space between the tips of the pins and the slide surfacevaries, as do surface properties of the slide. All of the above factorsperturb the shapes and sizes of the spots.

Other factors can affect the quality of the microarray image data thatis generated. During the spotting process, temperature nonuniformitiesacross a slide or between slides, and accidental scrapes by pins duringthe spotting process can alter the results. Another issue that causes amicroarray image to deviate from ideal conditions is contamination ofthe slide surface. For example, dust landing on the slides during thehybridization process can produce high-intensity pixels in themicroarray image. In the slide-drying process, small bumps on the slidesurface can appear as specular reflections in the microarray image.Another potential source of contamination is from accidental splashesand drips of DNA solution from the spotting pins. Thus, in anymeaningful processing of a microarray image, the above factors should beaccounted for and considered.

Because of these issues, previous image processing techniques forautomatically processing and analyzing microarray images have beenimpractical. The methods used to automatically extract microarray datathrough digital image processing are normally classified into twogroups: signal detection and signal analysis. Signal detection methodsattempt to locate the spots in the microarray images. One of the earlyimage processing-based methodologies used computer-based tools thatallowed a user to direct the image processor to spot locations in themicroarray images. A user applied a grid frame to an image and thenresized the frame to fit the grid of spots in the image. When the spotsin the image were not evenly spaced, the user would adjust the gridframe lines to align them with the spots in the image. This method,however, was prohibitively time-consuming and labor intensive formicroarray images, particularly where precise grid alignment was neededbefore proceeding to a measurement phase for the spot signal.

Another image processing-based signal detection method automaticallyestablishes grid lines after a user has identified the approximatelocation of a grid of spots in a microarray image. The user, forexample, specifies the location of the four corners of the grid in theimage. The spot finding method then locates the spots near thecalculated grid points. The obvious problem with this method is thathuman involvement is still required, making analyzing large microarraysprohibitively expensive.

Thus, a need exists for a system and method of automatically locatingsub-grids of gene expression signals in a microarray that account forthe inherent inconsistencies and errors in the microarray generationprocess and that do not necessitate the expense of human involvement.

Once the sub-grids in the microarray are identified, the signal analysismethods take over. In signal analysis, the gene expression spots in eachsub-grid are detected and characterized. A number of signal analysismethods have been applied to extract or “segment” the gene expressionsignals from the spots. In a space-based signal segmentation method, forexample, a circle of a predetermined size and having a location based onthe most likely position of the spot signal is placed in the image toseparate signal pixels from background pixels. Signal measurements aremade based on the assumption that signal pixels reside inside thecircle, while background pixels reside outside the circle. However,because of the high potential for microarray contamination and spotshape and location irregularity, the space-based signal segmentationmethod is inadequate.

Pure intensity-based signal segmentation methods have also beenineffective at obtaining accurate signal measurements for the geneexpression spots. These methods use pixel intensity information toextract the signal pixels. In these methods, it is assumed that the geneexpression signal pixels have intensities that are brighter than thebackground pixels. While being simple and fast computing, these methodshave significant disadvantages. First, gene expression levels that arelow will likely not be adequately characterized because the signal andbackground pixels cannot be separated based on intensity alone. Also,microarray images with contamination or noise are easilymischaracterized because the signal and background are not easilyseparated based on pixel intensity because both exhibit strong signals.

To enhance segmentation performance, methods that incorporate space andsignal intensity information have been developed. In a Journal ofBiomedical Optics article dated October 1997 by Yindong Chen et al.entitled Ratio—Based Decsions and the Quantitative Analysis of cDNAMicroarray Images, a pixel selection method based on the Mann-Whitneytest was proposed. In the method, a circle is placed in a target regionthat includes the region of the spot. Outside the circle, statisticalproperties of the assumed-to-be-background pixels are calculated. Fromthese calculations, a threshold level is calculated to determine whichpixels inside the circle are signal and which are background pixels. Aproblem with the method occurs when contamination is observed inside thecircle whereby contamination pixels are probably classified as signalpixels. Correspondingly, contamination pixels outside the circle causethe calculated threshold level to be higher that it otherwise would be.The method also performs poorly on spots having weak signals and onmicroarray images that are noisy. In these situations, the intensitydistributions for signal and background are overlapping. Thisoverlapping of intensity distributions inherently limits the performanceof threshold-based segmentation.

The method of trimmed measurements is another method that uses bothspatial and intensity information to perform segmentation. In thismethod, a circle is placed around the signal region after the signaldetection process. In most cases, some signal pixels will be outside thecircle and some background pixels will be inside the circle. The impacton threshold calculations are removed by “trimming off” these pixelsfrom the intensity distributions for signal and background. Asignificant problem with this method, however, is the reliance on theprecision of the location of the center of the circle and thedetermination of its radius. Small errors in either may result in theloss of significant signal information regarding the spot. Furthermore,the method incorrectly presumes that the spot is always circular. Whenthe spot not circular, the method again fails to identify significantsignal information.

A need exists, therefore, for a robust system and method for segmentingand characterizing gene expression spots. Specifically, a need existsfor a system and method that discerns contamination regions, noisyimages, low signal spots, and also preserves a maximum of signalinformation.

SUMMARY OF THE INVENTION

The present invention is directed to an improved system and method forautomatically segmenting detected signals associated with chemicalmaterials, such as gene expression signals, in an array whileautomatically accounting for any inherent inconsistencies and errors inthe array generation process. A preferred configuration includes ascanner having a digital scanning sensor and an output, the digitalscanning sensor scanning the array and transmitting from the output adigital image of the array, a memory for storing the transmitted digitalimage, and a processor. The processor processes the digital image storedin the memory, detecting a signal of a chemical material, segmenting thesignal, and calculating a measure of the segmented signal.

Prior to segmenting the signal for a chemical material, the signal ischaracterized by a center-representing pixel in the digital image and anapproximate radius around the center-representing pixel. The processorsegments the signal by tentatively classifying pixels within theapproximate radius of the center-representing pixel as signal pixels andthose outside the approximate radius as background pixels. Then, theprocessor determines major intensity modes for the signal pixels and forthe background pixels. Using the major intensity modes, the processorreclassifies the signal and background pixels depending on each pixel'sintensity relative to the major intensity modes.

The above and other objects, features and advantages will becomeapparent to those skilled in the art from the following description ofthe preferred embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate presently preferred embodiments ofthe invention and, together with the general description given above andthe detailed description of the preferred embodiments given below, serveto explain the principles of the invention.

FIG. 1 depicts a microarray system as is known in the art and depictedin the Journal of Biomedical Optics article dated October 1997 byYindong Chen et al. entitled Ratio Based Decsions and the QuantitativeAnalysis of cDNA Microarray Images.

FIG. 2 depicts the preferred steps in the overall microarray process andthe data produced after each step.

FIG. 3 depicts a process of array fabrication referenced in FIG. 2including the data that that the process produces in the overallmicroarray process.

FIG. 4 depicts a preferred embodiment of the system of the presentinvention for processing a microarray slide through the arrayfabrication, array scanning and image analysis steps referenced in FIG.2 and obtaining gene expression analysis data.

FIG. 5 depicts a preferred embodiment of preferred basic steps inprocessing a microarray image in the image analysis step of FIG. 2.

FIG. 6 depicts a hypothetical microarray in the form of a 2×2 set ofsub-grids.

FIG. 7 depicts a preferred embodiment of the basic steps in theautomatic sub-grid detection process referenced in FIG. 5.

FIG. 8 depicts a preferred embodiment of the steps in identifyingsub-grid regions in a microarray referenced in FIG. 7.

FIG. 9 depicts a preferred embodiment of the steps in detecting, asreferenced in FIG. 7, the rows and columns in each sub-grid of amicroarray.

FIG. 10 depicts a preferred embodiment of the steps, as referenced inFIG. 7, in identifying a probable sub-grid in a sub-grid region of amicroarray image.

FIG. 11 depicts a preferred embodiment of the basic steps in performingcircle localization, as referenced in FIG. 5, around a grid point in amicroarray.

FIG. 12 depicts a preferred embodiment of the detailed steps inperforming circle template matching, as referenced in FIG. 11.

FIG. 13 depicts a preferred embodiment of the steps in performing signalsegmentation, as referenced in FIG. 5, in a segmentation window in asub-grid of a microarray image.

FIG. 14 depicts a preferred embodiment of the detailed steps in findingthe major intensity modes, as referenced in FIG. 13, for the signal andbackground in a segmentation window.

FIG. 15A depicts an example of a signal histogram with slope lines onboth sides of the peak in the histogram as provided by one of theprocessing steps depicted in FIG. 14.

FIG. 15B depicts an example of a background histogram with slope lineson both sides of the peak in the histogram as provided by one of theprocessing steps depicted in FIG. 14.

FIG. 16A depicts a preferred method of classifying pixels in asegmentation window, as is performed in the reclassifying step of FIG.13, where the Low Signal Level (LSL) exceeds the High Background Level(HBL).

FIG. 16B depicts a preferred method of classifying pixels in asegmentation window, as is performed in the reclassifying step of FIG.13, where the High Background Level (HBL) exceeds the Low Signal Level(LSL).

FIG. 17A depicts an example of a gene expression spot in a window of amicroarray, in which the expression signal for the spot surrounds anintensity hole.

FIG. 17B depicts an example of a gene expression spot in a window of amicroarray, in which the expression signal for the spot does notcompletely surround an intensity hole.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The term “species” as used herein with respect to nucleic acids refersto a group of nucleic acid molecules, all of which comprise the samenucleotide sequence, allowing all to hybridize under stringentconditions to the same probe.

FIG. 2 depicts basic steps in the overall microarray process 100according to a preferred embodiment, and the form of the data producedand carried forward during this process. The data is stored in acomputerized database system that has memory sufficient to hold the datacollected from each step in the microarray process 100, and has thecapability of relating the data collected in each step with the otherdata collected throughout the process 100.

In the first step 200 of the microarray process 100, the gene expressionexperiment is designed. In this step 200, the genes to be tested areidentified and recorded as data 202 for reference in any of thesubsequent steps in the microarray process 100. Also, in this step 200,the basic design aspects of the microarray process steps that followthis step 200 are designed.

In the second step 204, the microarray is fabricated. During this step,array fabrication data 206 is collected. FIG. 3 depicts the preferredsub-steps performed in the array fabrication step 204. These sub-stepsinclude a microarray design sub-step 300, a microarray setup sub-step302 and a hybridization sub-step 304. In the array design sub-step 300,plate and array data 306, 308 are gathered and used and the settings 310for an arrayer that deposits the spots on the microarray slide areestablished. In sub-step 300, the layout of the gene deposits on theslides is determined. Certain parameters that describe the layout arealso determined and recorded. These parameters include the number oftrays, the number of slides per tray, the number of spots on each slide,the size of each spot expression region, the spot spacing and thepattern on the slides. In the arrayer setup sub-step 302, the settings310 for the arrayer are input and the microarray slides with spotsamples are generated. In step 302, the total number of plates, slides,etc. is determined and the microarray slides with samples are produced.Furthermore, data on the laboratory conditions including thetemperature, humidity, the airflow rate, the arrayer's speed andacceleration, the operator and any other relevant parameters arerecorded and saved. Then, the hybridization sub-step 304 is performedand data 305 on the performance parameters for this step 304, includingthe hybridization method, protocols and chemical buffers used and otherexperimental conditions are recorded and saved for use in one or more ofthe subsequent steps of the microarray process 100.

Referring again to FIG. 2, after the array fabrication step 204, anarray-scanning step 208 is performed in which the array is scanned and agray-scale digital image of the microarray slide is produced. In thisstep 208, scanning parameters are also determined and saved as scanningdata 210 that may be used in subsequent steps of the microarray process100. Data for this step 208 includes, among other things, the gain,speed, pixel size, pattern and position size for the scanning device.Once the microarray is scanned, in an image analysis step 212, theresulting digital image is analyzed to extract the intensities at eachsample location. Image analysis data 214 is produced by this processstep 212 and is used to perform, in a final step 216, a gene expressionanalysis.

FIG. 4 illustrates a preferred system 400 for performing the microarrayprocess steps depicted in FIGS. 2 and 3. As depicted in FIG. 4, thesystem 400 includes a high-speed image processing computer 401 having aprocessor, a memory, a data input port 402 and a output port 404. Thesystem further includes a scanner 406, and an arrayer 408. The arrayer408 places the spot samples on a glass slide 410 to generate aspot-filled microarray slide 412. The arrayer 408 is typically comprisedof an XYZ cantilever robot holding 16 quill-pen type probes. The arrayer408 also preferably includes a vacuum chuck for holding 48 standardmicroscope slides 410, a microtiter tray loader/stacker, a wash/drystation, a controlling computer, air handling components, and a cabinet.The robot moves only the probe holder with the probes spaced on 9 mmcenterlines to conform to the well spacing of standard microtiter trays.The microtiter tray/stacker/loader holds a plurality of microtiter traysand presents them one at a time to the robot load station when commandedby the controlling computer. The wash/dry load station flushes the probetips with clean water and then dries them with a blast of clean air fromthe cabinet, the blast being pulled past the tips with the vacuum. Thearrayer's controlling computer controls all of the other componentfunctions.

Once the arrayer 408 places the spots to generate the microarray slide412, the scanner 406 scans the microarray slide 412 and produces adigital image of the microarray slide 408 at its output 408. The outputof the scanner 406 is a digital image in a gray scale pixel format ofthe microarray 408. The scanner 406 preferably includes a digitalscanning sensor and an output port. The scanning sensor preferablyfurther includes its own computing processor such as an Intel™ Pentium™or another high-speed processor for controlling an inverted scanningfluorescent confocal microscope with a triple laser illumination system.The scanning sensor preferably performs at least 100 mm/sec scans withfive-micron resolution. Scanning is done in a comb pattern with datacollected in both directions. The digital data is acquired using anintegrator and preferably a standard 16-bit A/D converter in thescanning sensor's processor.

Once the digital image of the microarray is output by the scanner 406,the image processing computer 401 processes the digital image 414. Theimage processing computer 401 is preferably electrically connected atits input port 402 to the output port of the scanner 406. The digitalimage 414 of the microarray slide 412 is then processed by the imageprocessing computer 401. At the output 404 of the computer 401, theimage analysis data 416 that is used to perform the gene expressionanalysis in the next microarray process step 216 is provided. This datagenerally includes measurements of the attributes that characterize thegene expression signal of each spot in the microarray.

Preferably, the digital image 414 is processed in software operating onthe computer 401. A computer 401 executing software is preferably usedbecause of the utility and flexibility in programming and modifying thesoftware, viewing results, and running other peripheral applications.While the embodiment shown in FIG. 4 illustrates a preferred system inwhich a computer 401 is utilized, alternatively, computer 401 may beimplemented as any type of processor or processors that is capable ofprocessing the digital image as described herein. Thus, as used herein,the term “processor” refers to a wide variety of computational devicesor means including, for example, using multiple processors that performdifferent processing tasks or have the same tasks distributed betweenprocessors. The processors themselves may be general purpose CPUs orspecial purpose processors such as are often conventionally used indigital signal processing systems. Further, the multiple processors maybe implemented in a server-client or other network configuration, as apipeline array of processors, etc. Moreover, the processing need not beperformed at a single location. One or more steps in the processing canbe performed remotely such that data needed to perform one or moresubsequent steps in the process is communicated electronically. Further,some or all of the processing steps can be implemented with hard-wiredcircuitry such as an ASIC, FPGA or other logic device. In conjunctionwith a processor, the term “memory” refers to any storage medium that isaccessible to a processor that meets the memory storage needs forprocessing the digital image.

The basic steps for processing the microarray as a digital image in theprocessor 401 is shown in microarray processing sequence 500 of FIG. 5.While these basic steps and their sub-steps, as they are recited herein,are described in the context of microarray gene expression analysis,they may be applied to the analysis of other chemical (includingbiological) materials such as protein gels or tissues that aremanifested as irregular spots or signals in an array of such spots orsignals.

The first step is the automatic detection of sub-grids 501 in themicroarray image. A hypothetical example of a microarray image is shownin FIG. 6 to conceptualize the automatic sub-grid detection step 501.FIG. 6 depicts a 2×2 “meta-grid” of four sub-grids. In the figure, eachsub-grid has nine columns and ten rows. Moreover, the meta-grid has twometa-columns and two meta-rows. In detecting the sub-grids, the rows andcolumns of each sub-grid of spots in the image are identified. Thesecond basic step is circle localization 502, wherein the center of eachspot is identified. The third step is signal segmentation 504, whereinthe pixels in the microarray image that represent gene expression signalare identified. The fourth step is the calculation of quantity andquality measurements 506, wherein features of the identified signalpixels and the background pixels are calculated and used to form thebasis for, among other things, a confidence measure regarding the signalmeasurements. Although each of the basic steps 501, 502, 504, 506 isrigorously performed as later described, none of the basic steps assumesor relies on the perfect performance of any of the other basic steps. Assuch, the overall performance that is achieved in the microarrayprocessing sequence 500 is superior to prior methods.

FIG. 7 depicts the steps performed in the automatic sub-grid detectionprocess 501. As discussed above, a microarray typically consists of atwo-dimensional array of gene expression sub-grids. The first step 700in the automatic sub-grid detection process 501 is to determine thegeneral locations of the sub-grids in a microarray. Specifically,preferably rectangular regions of a microarray are identified in whicheach identified region contains only one sub-grid. Because the set ofsub-grids in a microarray are normally configured as a two-dimensionalarray, the identification of each sub-grid region can be performed byidentifying horizontal and vertical lines in the microarray thateffectively isolate each sub-grid region. Preferably, the method ofidentifying a horizontal or a vertical line that partitions a sub-gridregion is the same whether the identified line is horizontal orvertical.

As shown in FIG. 8, the method of identifying a horizontal or verticalline to isolate a sub-grid region is preferably comprised of thefourteen steps discussed below. The method is essentially the sameregardless of whether a horizontal or vertical line is identified.Outlining the steps for initially identifying a vertical line, the firststep 800 is to sum all pixels in the microarray image in the verticaldimension to form an ordered one-dimensional horizontal vector. In thesecond step 802, the maxima in the resulting one-dimensional vector areidentified. To do this, a “maximum” filter is preferably used thatreturns a “1” if an element of the vector is the largest element in awindow centered on the element. The window size is preferably set equalto the expected diameter in pixels of the spots in the microarray image.The diameter is preferably provided from the array scanning step 208 inthe microarray process 100 and is normally between about 20 and about 30pixels. Similarly, in the next step 804, the minima in theone-dimensional horizontal vector are identified. To identify theminima, a “minimum” filter is preferably used having a size that is thesame as the maximum filter used in the previous step 802. The minimumfilter returns a “1” when the filter is centered on an element that isthe smallest element in the filter window.

Once the locations of the maxima and minima are determined, in the nextstep 806, the intensity differences between each maximum and eachmaximum's nearest minima on each side in the ordered horizontal vectorare calculated. By calculating the intensity difference, the relativeheight in intensity of each maximum is established. These relativeheights are the “peaks” in the horizontal vector. Next, a predeterminednumber, K, of the largest peaks are selected for consideration 808. Forthe horizontal vector, K is preferably set to the number of meta-gridcolumns multiplied by the number of columns in a sub-grid. Thus, Kexpectedly is equal to the total number of columns in the microarray. InFIG. 6, for example, K equals 18. Next, the mode of the distance betweenthe selected K peaks is determined 810. To determine the mode of thedistance, the distance in pixels between adjacent peaks is found andthen the mode for these distances is calculated. The mode distance valueis used in the next step 812 to remove the weakest of the K peaks thatwere previously selected for consideration. This mode distance is usedas the size of a maximum filter for pruning away the weakest of theselected peaks. For example, when the filter is centered on one peak,and another smaller peak is within the window of the filter, thatsmaller peak is removed from consideration.

In the next step 814, a process is initiated in which the remainingpeaks are classified based on their heights as one of three kinds:valid, invalid or ambiguous. Preferably, the classification step 814begins by first, determining a first threshold intensity level for avalid peak. In a preferred embodiment, the first threshold level for avalid peak is equal to the median of the selected peaks multiplied byabout 0.3. In the second part of the step 814, the peaks that exceed thefirst threshold level are classified as valid peaks. Third, a secondintensity threshold is determined to classify invalid peaks. Theintensity threshold for invalid peaks is preferably set at the height ofthe lowest of the previously selected K peaks multiplied by 0.75. In thefourth part of the classification step 814, all of the peaks fallingshort of this second threshold are classified as invalid peaks. Finally,the peaks below the first threshold but exceeding the second thresholdare classified as ambiguous peaks.

After completing this basic peak classification step 814, the automaticsub-grid detection process 501 continues to the next step 816, whereinpeaks are inserted into the ordered horizontal vector. To perform theinsertion, when the distance between two adjacent peaks is more thanabout 1.5 times the mode distance, then a peak is preferably inserted atthe midpoint between them. The inserted peak is then classified as aninvalid peak. This process step 816 is preferably performed for all ofthe originally selected K peaks. In the next step 818, a score iscomputed for every set of C consecutive peaks, where C is equal to theexpected number of columns in a sub-grid. The score for each set of Cconsecutive peaks is calculated by subtracting the number of invalidpeaks from the number of valid peaks in each set. Where the total numberof peaks in the vector is N, there should be N−C+1 overlapping sets of Cconsecutive peaks.

Once the scoring step 818 is performed, a process 820 for selecting forand eliminating from consideration sets of C consecutive peaks isinitiated. First, the set of C consecutive peaks with the highestcomputed score is selected. Once that set is selected, the sets of Cconsecutive peaks that overlap with this selected set are removed fromconsideration. This selection/elimination process 820 continues byselecting from the remaining sets the set of C consecutive peaks withthe highest score, and then removing from consideration the sets thatoverlap the selected set. This selection/elimination process 820 isperformed until all of the sets are either removed or selected. In theend, it is expected that the number of selected sets equals the numberof meta-columns in the microarray. In the next step 822, the number ofselected sets is compared to the number of meta-columns. If the numberof selected sets does not equal the number of meta-columns, theautomatic sub-grid detection process is considered unsuccessful. Ifautomatic sub-grid detection process is considered unsuccessful, thenthe process to step 824 and exits. If the number of selected sets equalsthe number of meta-columns, the automatic sub-grid detection process isconsidered successful to that point and continues forward to step 826.In this successful case, the selected sets of C consecutive peaksspecify all of the columns of spots in the microarray where each setcorresponds to the sets of columns for each sub-grid.

According to the next step 826, the previous steps in the sub-gridregion detection process 700 are repeated. This time, however, theprevious steps in the sub-grid region detection process 700 areperformed to identify the meta-rows in the microarray image. Finally,after all of the sets of rows and columns are determined, the microarrayimage is partitioned 828 into spatial regions according to the meta-rowand meta-column locations found in the above process steps.

After the spatial region for each sub-grid has been partitioned, theautomatic sub-grid detection process 501 proceeds to identify, as shownin FIG. 7, the rows and columns for each sub-grid of step 702. Again,the steps to find the rows in a sub-grid are preferably essentially thesame as the steps for finding the columns. Thus, only the process foridentifying columns in a sub-grid is outlined below. FIG. 9 depictssteps for a preferred row/column detection process 702. In the firststep 900, all of the pixels in a sub-grid region along the verticaldimension are summed to form a one-dimensional horizontal vector. Next,an “averaging” or low pass filter whose width is equal to the expecteddiameter of the spots is applied to the vector in step 902. Thisaveraging step 902 is performed because the image of each sub-gridregion is smaller than the overall microarray image that was processedin the previous sub-grid region-locating step 700. By applying theaveraging filter, the noise that is inherent in a typical microarrayimage is reduced. Next, the maxima or peaks in the horizontal vector aredetermined in step 904, again using a maximum filter in which the sizeof the maximum filter is preferably equal to the expected spot size. Inthe next step 906, using the previously calculated mode distance M toestablish additional peak locations, peaks are added to the vector tofill the length of the sub-grid region. The resulting peak locationsspecify the locations of the columns in the sub-grid region. Theprevious steps for detecting the columns in a sub-grid region arerepeated 908 to determine the locations of the rows in the sub-grid orvice versa. Finally, a check step 910 is performed to determine whetherthe number of peaks for each vector is at least as high as expected. Forthe horizontal vectors, the number of peaks should equal or be greaterthan the expected number of columns in a sub-grid. For vertical vectors,the number of peaks should be equal to or greater than the number ofrows in a sub-grid. If the number of peaks is less than expected for ahorizontal or vertical vector, then the process exits at step 912,having not performed successfully. If the number of peaks for a givenvector is equal to or greater than the expected number, then the processexits at step 914 with the row and column detection process 702 beingconsidered successful. With a successful completion of this process, therows and columns define candidate sub-grids with grid-pointintersections in each sub-grid region of the microarray.

Referring to FIG. 7, the next step 704 in the automatic sub-griddetection process 501 is the identification of a probable sub-grid ineach region from the rows and columns identified in the previous step702. As discussed above, the identified number of rows and columns ineach region should exceed the expected number of rows and columns of asubgrid. Thus, the specific rows and columns that correspond to thesub-grid in each region are next determined.

FIG. 10 outlines the sub-steps of step 704 in determining the probablesub-grid in each partitioned sub-grid region. First, a circular templateis built in step 1000, the circular template preferably having acircular center area of pixels with a ring of pixels around the centerarea of pixels. The diameter of the template is preferably equal to theshortest distance between grid points in a given sub-grid region. Thesize of the circular center area is preferably equal to the expectedspot size. The pixel values in the circular center of the template arepreferably set to “1.” The pixel values in the ring around the circularcenter are preferably set such that the sum of all of the pixel valuesin the template is zero. Thus, the pixel values in the ring region areall preferably set to some negative value, the magnitude of whichdepends on the ring size. In the next step 1002, the filter is centeredon each previously established grid point and a score is calculated. Thescore reflects the likelihood of a gene-expressing spot on that gridpoint. The score is computed by summing all of the pixels in thetemplate window around the grid point after they are multiplied by thepixel weights in the circular template. In the next step 1004, all ofthe grid points are rank-ordered according to their likelihood scoresthat were calculated in the previous step 1002.

Next, new likelihood scores are provided for each grid point based ontheir rank order in step 1006. The new rank order-based scores for eachgrid point preferably being determined by: (1) assuming that thesub-grid is expected to have R rows and C columns, for grid pointshaving the top 0.5×R×C likelihood scores, the new likelihood score ispreferably set to 1.8; (2) for the remaining grid points that were inthe top 0.8×R×C likelihood scores, the new likelihood scores arepreferably set to 1.0; (3) for the remaining grid points with likelihoodscores among the top RC likelihood scores, the new likelihood scores arepreferably set to 0.5; (4) all remaining grid points, their likelihoodscores are preferably set to zero. In the next step 1008, based on thesenewly assigned likelihood scores, candidate sets of sub-grids ofdimension R×C are determined. Sub-grid scores are determined for everypossible sub-grid of size R×C in the sub region. The sub-grid score fora sub-grid is calculated in step 1010 by summing the likelihood scoresof every grid point in the candidate sub-grid. Then, the sub-grid withthe highest likelihood score in each region is selected in step 1012 asthe most likely sub-grid for that sub region. Preferably, the next step1014 is to determine whether the selected sub-grid is “bounded.” Abounded sub-grid is one in which there are gene-expression spots in theleftmost column, the uppermost row, the rightmost column, and thelowermost row. If a sub-grid is unbounded on any one or all of itssides, then that sub-grid is considered “free.” A determination ofwhether a sub-grid is bounded or free is made for the probable sub-gridsin each region of the microarray.

After the bounded-or-free determination is made for the probablesub-grids, the bounded sub-grids are used to constrain or “bind” anyfree sub-grids in constraining step(s) 1016, 1018. Referring to FIG. 7,this step 706 is the last basic step in the automatic sub-grid detectionprocess 501. Since the previous steps may not have confidentlyidentified every probable sub-grid within the microarray, thisconstraining step 1016, 1018 is performed. The purpose of this step1016, 1018 is to use the probable sub-grids that have been confidentlyidentified to aid in fixing the locations of other probable sub-gridswhose exact positions in their respective sub-grid regions remainuncertain (i.e. are free). For example, if a sub-grid is bounded on itsleft side and the sub-grid above it in the microarray meta-grid isunbounded on its left side, the position of the leftmost column in thelower sub-grid is used to constrain or “bind” the leftmost column of theupper sub-grid. The lowermost row, uppermost row or rightmost column ofa bounded sub-grid is similarly used to constrain other free sub-grids.Moreover, these constraints are preferably propagated from sub-grid tosub-grid as free sub-grids become bounded. After the constraint processhas been exhausted to bind the free subgrids, any remaining freesub-grids are constrained in a manner that minimizes the position offsetbetween the free sub-grids and their neighboring bounded sub-grids.

Referring again to FIG. 5, after the automatic sub-grid detectionprocess 501 has been completed, the next step 502 is circlelocalization. FIG. 11 depicts the two basic steps in circle localization502. In a first step, an edge detection process 1100 is performed on themicroarray image to generate an edgemap for the image. In the edgedetection process 1100, a number of different filters that are known inthe art of image processing are optionally used. Such filters include aSobol detector, a Canny detector, a Prewitt detector, a Robertsdetector, Laplacian and Gaussian methods and zero-cross methods. Oncethe edge detection step is performed on the microarray image, and anedgemap has been created, the next step 1102 is circle templatematching, an example of which is a Hough transform.

FIG. 12 depicts a preferred embodiment of the specific steps in circletemplate matching process 1102. The first three steps 1200, 1202, 1204in the circle template matching process 1102 operate to identify thecenter pixel for a given gene-expression spot. To perform the spotcenter finding process, initially, a window around each grid point isestablished. The size of the window is the distance in pixels betweenrows by the distance in pixels between columns that were previouslydetermined for the identified sub-grid. In this window around each gridpoint, every edgemap pixel in the window is examined. For each pixel,the pixels orthogonal to the direction of the edge pixel and extendingto the edge of the window are incremented by one in a counting arraythat maps to and has the same dimensions as the microarray window aroundthe grid point. This incrementation of the counting array is the firststep 1200 in the center pixel-finding process. By performing thisoperation on each pixel, a counter map is formed in step 1202 based onthe incrementation of pixels in the window. After each pixel has beentested and the counter map has been generated, the maximum valued pixelin the counter map is identified in step 1204. This maximum-valued pixelis considered to correspond to the center of the gene expression spotfor that particular gird point.

The next set of steps determines the radius of the spot around thisdetermined center of the gene expression spot. In the first step 1206 ofthe radius finding process, the edge map pixels are pruned based on eachpixel's directional offset from each pixel's direction to the identifiedcenter pixel. Preferably, if an edge pixel is outside of a +/−60-degreeangle window in its direction from the direction to the center pixel,then that edge pixel is removed from consideration. For all others thatremain after the pruning step is completed, a histogram is formed instep 1208 based on the distance between each edge pixel and the centerpixel. Thus, the X-axis for this histogram is the distance of a givenpixel from the previously identified center pixel. Once this radiushistogram has been formed, the peak in the histogram is identified instep 1210. This peak expectedly corresponds to a large number of edgepixels that are about the same distance from the identified centerpixel. The location a of this peak on the X-axis of the histogram ispreferably established as the radius of the spot in step 1212. Byestablishing the center and now the radius of the spot for a given gridpoint, the circle localization step 502 in the microarray process iscompleted.

Referring again to FIG. 5, the next step 504 is to segment or extractthe gene expression signal from the region around each identified centerpixel for each spot. FIG. 13 depicts the basic steps in segmenting thesignal using the identified center and radius defining a circle for eachgene expression spot. The first step 1300 in segmenting the signal for agiven spot region is to tentatively classify pixels inside of the circleas signal and to classify those outside of the circle as background. Thenext three steps 1302, 1304, 1306 in the signal segmentation processrefine this tentative classification. The second step 1302 is to findthe major mode in the intensity distributions of both the tentativelyclassified signal pixels and the tentatively classified backgroundpixels. In FIG. 14, the performance of this step 1302 is expanded intoeight sub-steps. The actual sub-steps in FIG. 14 first outline theprocessing on the signal region. Later, essentially the same steps arerepeated on the background region. In FIG. 14, the first sub-step 1400is to form an intensity histogram from the pixels inside the circle.Next, the peak in the intensity histogram above the median intensity isidentified in sub-step 1402. Having identified the peak, preferably allof the histogram bins with pixel numbers greater than the number ofpixels in the peak bin multiplied by 0.7 are identified forconsideration in sub-step 1404. In the next sub-step 1406, theidentified histogram bins that are not part of a connected group ofidentified bins that includes the peak bin are removed. Thus, after thissub-step 1406, only a single group of connected bins should remain inconsideration. This cluster of bins that includes the peak bin ispreferably identified as the major mode of the histogram.

In the next sub-step 1408, the slope on each side of the peak in thehistogram is found. Preferably, the following steps, which areessentially the same for the determination of both slopes, are performedto establish the slope on the high intensity side of the peak. First,the intensity histogram is differentiated and a differential histogramis created. The peak in the differential histogram is then identified,and then all of the differential histogram bins that are larger than 0.3times the size of the differential peak are tentatively identified. Thegroup of connected, tentatively identified bins that includes thedifferential peak is then identified. Then, in the next step 1410, fromthe group of identified bins, a slope line is fit on the originalhistogram. The same basic process of fitting a slope line is applied onthe low intensity side of the peak in the original histogram to completestep 1410. The two slope lines are finally extended to cross the X-axison the original histogram.

In the next sub-step 1412, where the slope lines cross the X-axis of thehistogram, the bins at these intersections are identified. An example ofthe result of the preceding operations on the histogram of tentativesignal pixels is shown in FIG. 15A. In FIG. 15B, a similar histogram forthe tentative background pixels is generated including the slope linesfor that histogram. The slope lines for the tentative background pixelhistogram are generated using the same sub-steps used to generate theslope lines in the tentative signal pixel histogram. Thus, the samebasic sub-steps in the major mode identification process 1302 arerepeated for the background histogram in sub-step 1414. The maindifference in the process is that for the tentative background pixels,the histogram peak below the median intensity is initially identifiedrather than the peak above the median. In FIG. 15A, the bin at theintersection of the X-axis and the low intensity slope line of the peakin the signal histogram is identified as LSL for Low Signal Level. Thebin at the intersection of the X-axis and the high intensity slope lineof the peak in the signal histogram is identified as HSL for High SignalLevel. Similarly, the corresponding intersections in the backgroundhistogram are LBL for Low Background Level and HBL for High BackgroundLevel. This partitioning of the histogram is the next step 1304 shown inFIG. 13.

By so the thresholding the histogram, pixels in the window arereclassified in the next step 1306 according to their spatial positionand their position in the histogram, i.e., whether they are in a groupbetween LBL and HBL, between HBL and LSL, between LSL and HSL or aboveHSL. The classification of pixels according to their intensity andposition with respect to the circle in the window is shown in FIGS. 16Aand 16B. Specifically, in FIG. 16A, pixels with intensities above theHSL threshold are considered contamination pixels. Pixels withintensities above the LSL threshold but below the HSL threshold, andthat are inside of the circle are considered signal. Pixels in the samehistogram region but outside of the circle are considered“undetermined.” Pixels with intensities above the HBL threshold butbelow the LSL threshold and that are inside the circle are consideredsignal pixels. Those outside of the circle with such intensity levelsare considered “undetermined.” Finally, pixels with intensities belowthe HBL threshold are considered background pixels, regardless of theirposition with respect to the circle in the window.

Similarly, referring to FIG. 16B, pixels with intensity levels above theHSL threshold are considered contamination pixels. Pixels with intensitylevels above the HBL threshold and below the HSL threshold and that areinside the circle are considered signal pixels. Pixels with suchintensity levels that are outside the circle are considered“undetermined.” Finally, pixels with intensity levels below the HBLthreshold level are considered background pixels. The distinctionbetween pixels in the two figures is that, in FIG. 16A, the LSLthreshold is greater than the HBL threshold, whereas in FIG. 16B, theHBL threshold is greater then the LSL threshold.

Finally, referring to FIG. 13, pixels that are undetermined are resolvedin step 1308. For these pixels, their positions in the window withrespect to just-established signal and background regions is used toclassify them. Signal, background and undetermined pixels typically formsomewhat homogeneous regions of each kind in the window. For example, agroup of undetermined pixels may form an undetermined pixel region.Similarly signal pixels often form a homogenous signal region. Thespatial relationship of homogeneous regions to an undetermined pixel orpixel region is used to classify the pixel or pixel region as backgroundor signal.

In one preferred method of classifying an undetermined pixel region, ifthe region does not touch a signal region, the region is automaticallyclassified as a contamination region. Alternatively, if the undeterminedpixel region touches a signal region but does not touch a contaminationregion, the undetermined region is classified as a signal region. Asanother alternative, if the undetermined pixel region touches both asignal region and a contamination region, the undetermined region isclassified as one or the other depending on a further analysis.Preferably, if the size of the contamination region that theundetermined region touches is smaller than ⅓ the size of theundetermined region, and the contamination region shares more thantwo-fifths of its border with a signal region, then the undeterminedregion is classified as a signal region. Otherwise, the undeterminedregion is classified as a contamination region. Optionally, this methodof identifying spatial regions is repeated for any remainingundetermined regions. The newly identified spatial regions are used inthe reperformance of this process. After all of the pixels have beenclassified, the spot in the segmentation window is identified by thepixels that have been classified as signal pixels in step 1310.

At this stage in the microarray image process, results of the processare determined as step 506. Referring to FIG. 5, this step 506 is thelast step in the microarray processing sequence 500. In this step 506,signals are characterized and preferably, an evaluation of the signalcharacterization is performed. The signal characterization measurementsquantify the expression levels of the genes in different ways. Signalcharacterization measurements include the mean of the intensity of thesignal of a spot, the total number of pixels that comprise signal pixels(signal area), the median intensity and the mode intensity. Theevaluation of the signal characterization measurements, on the otherhand, determines various signal quality measurements that are based uponintermediate data and parameters that have been generated throughout themicroarray process 100. Such signal quality measurements are preferablythen incorporated into final confidence measures associated with eachgene expression signal's measurements.

The quality measurements are generally one of two kinds, local andglobal. Local quality measurements are measurements in the window of agene expression spot. These measurements include geometric properties ofthe signal and contamination regions in the window. One such measurementis the signal area referenced above. While being a signalcharacterization measure, signal area is also a signal quality measure.During array fabrication 204, one of the goals of automation of themicroarray process 100 is the achievement of consistency in thepreparation of each spot sample. While expression levels from sample tosample may vary, ideally, each sample results in a gene expressionsignal that circular, centered on a grid point, of a certain radius, andthereby a certain area. The particular radius preferably depends on theparameters established during the experiment design and/or the arrayfabrication steps 200, 204. The measurement of signal area, and inparticular, its deviation from a signal's expected area as a result ofthe design of the overall microarray process 100, is therefore a factorthat becomes relevant to any determination of confidence in the signal'smeasurement.

Another quality measurement that is preferably factored into anycalculation of confidence is spot area. Spot area differs from signalarea in that spot area includes signal pixels and non-signal pixels thatare located inside a predominantly signal region. FIGS. 17A-B depict twoexamples distinguishing between spot area and signal area. In FIG. 17A,the signal area includes only the region labeled 1700. The spot areaincludes both regions 1700 and 1702. Similarly, in FIG. 17B, the signalarea includes only region 1704, while the spot area includes bothregions 1704 and 1706. Unlike FIG. 17A, in FIG. 17B, region 1706 is notcompletely surrounded by a signal region. Region 1706 is, in part,defined by a segment 1708 that make the signal region appear morecircular. The spot area, and additionally, its ratio relationship to thesignal area is a signal quality measure that is potentially an indicatorof spotting problems in the array fabrication step 204. For example, aspot area that is significantly larger than the corresponding signalarea may indicate a hole in the signal as shown in FIG. 17A that isoften caused by problems with the shape of an arrayer pin, having anexcessive amount of salt in the deposition solution, or problems withthe chemistry of the slide. Such issues are preferably factored into anyconfidence evaluation of a particular signal measurement while, at thesame time, serving a quality control function for the overall microarrayprocess 100.

Another quality measure that is preferably factored into a confidencedetermination for the output measurements and preferably additionallyserves as a quality control measure for the overall microarray process100 is ellipticity or the degree to which the signal region has theshape of an ellipse versus a circle. To make this geometric propertymeasurement, the length of the signal region's major and minor axes arepreferably determined. This measure both indicates the signal'sdeviation from the desired circle and the potential that the signal'selliptical shape is due to a problem in the array fabrication process204. For example, an elliptically shaped signal is potentially due to adirectional airflow over the surface of the arrayer slide that causesthe sample solution to spread in one or more directions on the slidesurface. Alternatively, an elliptical shape may be due to a slide thatis not positioned horizontally or is uneven.

To aid in narrowing the potential causes for an elliptically shapedsignal and thereby refine the contribution to the confidencedetermination that is subsequently calculated, the orientation of theellipse is also determined. In particular, by calculating ellipticalsignal orientation, the likelihood that directional airflow may be thecause of an elliptical signal can be more precisely determined. Forexample, if other signals on the slide have the same orientation,directional airflow becomes a more likely cause. Conversely, if anelliptical signal's orientation is an isolated occurrence, then thecause may be more likely a local anomaly such as an artifact on theslide surface.

Another geometric property measure that is preferably calculated is thesquare perimeter-to-spot area ratio. This measure is suggestive of aspot's deviation from a circle and is preferably normalized to themeasure's value for a circle. Because spots are preferably designed tobe circular in shape, higher values for this measure preferably have anegative effect on the ultimate confidence values.

The properties of contamination regions that may be present in a signalwindow are also preferably calculated and incorporated into theconfidence calculation for the signal. One property is the area of thecontamination region. Larger areas of contamination preferably result inlower confidence values for an associated signal, and to some degree,the integrity of the signal generally may become questionable.

Another confidence measure is the difference in the average intensityfor pixels in contamination regions versus the signal regions. Thismeasure broadly indicates the confidence in the signal segmentation step504 to distinguish between signal and contamination regions for a spot.Smaller differences between the average intensities preferably result inlower confidences in their corresponding signal measurements.

Certain geometric properties of the sub-grids are also determined tosupport confidence measure determinations and provide further qualitycontrol indicators for the overall microarray process 100. One suchproperty is the deviation of a spot's center location from its spot'scanonic location. This measure is calculated by determining for eachspot the distance between its grid point established by the automaticsub-grid detection step 501 and the spot's center, by calculating acentroid location for the spot, or optionally, using the spot centervalue determined in the circle localization step 502. In confidencecalculations for a signal measurement, larger differences preferablylower the confidence value to the extent that they indicate distortionin the spot placement, the existence of contamination, or an error inthe performance of the automatic sub-grid detection step 501.

A quality measure that evaluates sub-grids more generally is degree ofalignment between sub-grids (sub-grid alignment). This measuredetermines the degree to which a row or column of sub-grids are inalignment with each other. Preferably, measures of sub-grid alignmentare for pairs of sub-grids that are adjacent to each other either in thesame row or the same column. For example, for two sub-grids in the samecolumn, sub-grid alignment is preferably determined by first calculatingthe median of the distances between columns in both sub-grids. Second,the median of the offsets between the corresponding columns in thesub-grids is calculated. Finally, the sub-grid alignment value isdetermined by the ratio of the median of the distances between columnsto the median of the offsets. The sub-grid alignment calculation is thesame for adjacent sub-grids in the same row except that mediancalculations are applied to successive rows rather than successivecolumns. A determined sub-grid alignment value is potentially indicativeof a pin printing error during the array fabrication step 204, or may beindicative of the errors in the performance of the automatic sub-griddetection step 501. For sub-grid alignment values greater than 0.5, aproblem in one of these two areas likely exists. For sub-grid alignmentvalues greater than 0.3, a closer inspection of the results of theprocess may be required. Generally, however, the values are preferablyfactored into signal confidence determinations.

Another global quality measure associated with sub-grid analysis is theuniformity in the distance between sub-grids. Sub-grid distanceuniformity is a measure of the regularity of the distance betweencorresponding rows or between corresponding columns of two or moresub-grids. In a preferred embodiment, sub-grid distance uniformity iscalculated by first determining the median of the distances betweencorresponding rows of adjacent sub-grids in the same column orcorresponding columns of two adjacent sub-grids in the same row. Amedian distance value is therefore found for each pair of adjacentsub-grid in the microarray. The median of the set of median distancevalues for the pairs of sub-grids is then determined as a global median.Finally, sub-grid distance uniformity is determined by the mediandistance value that has the largest absolute deviation from the globalmedian. By calculating the sub-grid pair with the largest deviation, thecalculation provides a clear warning of at least one sub-grid that isnot in its expected location. Like grid alignment, sub-grid distanceuniformity is potentially indicative of pin printing problems such as abent pin in the arrayer 408 or an error in the performance of theautomatic sub-grid detection step 501. Furthermore, values for sub-griddistance uniformity are preferably factored into confidence measuredeterminations for measured signals.

Another set of quality measures concerns the variation in the identifiedbackground. Locally, the background variation is the standard deviationin the intensity of background pixels for each window. Higher standarddeviations are potentially indicative of dust or other contamination onthe local area of the window or possibly artifacts in the underlyingglass or substrate. A measure of background variation is also determinedfor the entire microarray. To make this global determination ofbackground variation, preferably the mean of the background for eachsignal window is first determined. Then, the standard deviation of theaccumulated background means is determined. A higher result for thestandard deviation is indicative of variation or non-uniformity in largeregions of the background. A likely cause of such non-uniformity is oneor more large areas of contamination such as when fluorescent moleculeson the slide outside a spot well become trapped between the slide andanother plate, and are spread across the slide surface. Anotherpotential cause is an error during the scanning of the microarray into adigital image. The measure of global background variation is anindicator or such an occurrence and is preferably considered in anyconfidence calculations.

Another determination is whether any of the sub-grids in the digitalimage of the microarray appear to be missing. Indications of one or moremissing sub-grids suggest a contact problem associated with one or morepins of the arrayer 408 such as would be the case if a pin is bent ormissing. The determination that a sub-grid is missing may also indicatean error in the automatic sub-grid detection step 501.

Another signal quality measurement measures the parallelism of rows andof columns of sub-grids. Such is measured by preferably calculating aslope for each sub-grid line in the microarray and then calculating thestandard deviation of the slopes. This calculation is preferablyperformed for all rows and for all columns. Similarly, the orthogonalitybetween the rows and columns of the sub-grids is determined.Orthogonality is preferably calculated by measuring the angle of thesub-grid lines at each sub-grid point intersection and determining thestandard deviation of the measured angles. The measurement of bothparallelism and orthogonality are indicative of potential errors in theautomatic sub-grid detection step 501 or pin placement errors duringarray fabrication 204.

Preferably, a set of monitoring calculations is performed as anadditional quality control measure for the microarray process. Themonitoring calculations include determining the intensity range andstandard deviation for spots of the same known signal intensity that areinserted in the microarray image. Furthermore, the microarray images aremonitored by calibrating the intensity using a series of control spotsat different intensity values and reporting the variances.

The various signal quality measures, while being applied to identifypotential concerns in prior steps of the overall microarray process 100or in one of the prior steps of the image analysis process 212, alsopreferably are combined into a function or system for determining aconfidence value for each measured gene expression signal. The functionmay be one that is heuristically obtained based on the performance andanalysis of previous results. Alternatively, the various measures areincluded as input nodes to an artificial neural network that refinesinitial functional relationships between the signal quality measures.Preferably, the confidence value is a percentage from 0 to 100reflecting the system's confidence in the obtained signal measurement.

Although the present invention has been described with reference topreferred embodiments, it will be readily appreciated to those ofordinary skill in the art that many modifications and adaptations of theinvention are possible without departure from the spirit and scope ofthe invention as claimed hereinafter.

What is claimed is:
 1. A system for assessing chemical materialsmanifested as an array of signals, the array being a grid of a pluralityof sub-grids of the chemical materials, said system comprising: a memorystoring a digital image of the array; and a processor for accessing thedigital image from said memory, detecting in the digital image acenter-representing pixel and an approximate radius of a signal of achemical material, segmenting the signal, and calculating a measure ofthe segmented signal; said processor segmenting the signal for thechemical material by classifying pixels within the approximate radius ofthe center-representing pixel as tentative signal pixels and outside theapproximate radius from the center-representing pixel as tentativebackground pixels, determining a signal major mode for the tentativesignal pixels and a background major mode for the tentative backgroundpixels, and using pixel intensity relative to the signal major mode andthe background major mode to reclassify the tentative signal andbackground pixels.
 2. The system of claim 1 further comprising a scannerfor scanning the array and outputting the digital image of the arrayinto said memory.
 3. The system of claim 1 further comprising anarrayer, the arrayer depositing the chemical material on a slide to formthe array.
 4. The system of claim 1, said processor selecting betweenclassifications of contamination, signal, background and undetermined inreclassifying the tentative signal and tentative background pixels. 5.The system of claim 4, said processor finally classifying ascontamination pixels the undetermined pixels that are not spatiallydirectly adjacent to a signal pixel and are not spatially adjacent to asignal pixel via other undetermined pixels.
 6. The system of claim 4,said processor finally classifying as signal pixels the undeterminedpixels that are not spatially directly adjacent to a contaminationpixel, that are not spatially adjacent to a contamination pixel viaother undetermined pixels, and that are either directly or via otherundetermined pixels adjacent to a signal pixel.
 7. The system of claim4, said processor finally classifying the undetermined pixels that arespatially adjacent to both a region of contamination pixels and a regionof signal pixels as signal pixels where the number of pixels in theregion of contamination pixels is less than a predetermined fraction ofthe number of pixels in the region of signal pixels, and ascontamination pixels where the number of pixels in the homogeneousregion of contamination pixels is at least the predetermined fraction ofthe number of pixels in the homogeneous region of signal pixels.
 8. Thesystem of claim 7, the predetermined fraction of the number of pixels inthe region of signal pixels being about one-third.
 9. The system ofclaim 1, said processor determining a major mode for the tentativesignal pixels and a major mode for the tentative background pixels bygenerating a signal intensity histogram from the tentative signal pixelsand a background intensity histogram from the tentative backgroundpixels, identifying a peak bin above the median pixel intensity in thesignal intensity histogram and a peak bin below the median intensity inthe background intensity histogram, selecting for each histogram a sethistogram bins with pixels numbers greater than a predetermined fractionof the number of pixels in the peak bin, removing from the set ofhistogram bins for each histogram, histogram bins that are not in aconnected group of histogram bins that includes the peak bin,calculating a slope on each side of the peak bin for the connected groupof histogram bins in each histogram, fitting a slope line on each sideof the peak bin for the connected group of histogram bins in eachhistogram, and identifying intersection histogram bins that intersectone of the slope lines in each histogram, the major mode for eachhistogram being the histogram bins between the intersect histogram bins.10. The system of claim 9, the predetermined fraction of the number ofpixels in the peak bin being about seven-tenths.
 11. The system of claim1, the chemical materials being nucleic acid species and the array ofsignals being a microarray of signals associated with the nucleic acidspecies.
 12. The system of claim 1, said processor determining a measureof performance at detecting in the digital image a center-representingpixel and an approximate radius of a signal of a chemical material,segmenting the signal, and calculating a measure of the segmentedsignal.
 13. The system of claim 12, said processor determining themeasure of performance by measuring a spot area for the signal.
 14. Thesystem of claim 13, said processor determining another measure ofperformance by comparing the spot area to an area of the signal.
 15. Thesystem of claim 12, said processor determining the measure ofperformance by determining an ellipticity of the signal.
 16. The systemof claim 15, said processor determining another measure of performanceby determining an orientation of the ellipticity of the signal.
 17. Thesystem of claim 12, said processor determining the measure ofperformance by determining a degree of deviation of the signal from acircle.
 18. The system of claim 12, said processor determining themeasure of performance by determining an area of contamination in awindow around the segmented signal.
 19. The system of claim 12, saidprocessor determining the measure of performance by comparing anintensity measure for the signal with an intensity for contamination ina window around the signal.
 20. The system of claim 12, said processordetermining the measure of performance by measuring a variation in thebackground major mode.
 21. A method of assessing chemical materialsmanifested as an array of signals, comprising the steps of: (a)detecting in the digital image a center-representing pixel and anapproximate radius of a signal of a chemical material; (b) segmentingthe signal; and (c) assessing the segmented signal; the step ofsegmenting the signal comprising the steps of: (ba) classifying pixelswithin the approximate radius of the center-representing pixel astentative signal pixels and outside the approximate radius from thecenter-representing pixel as tentative background pixels; (bb)determining a signal major mode for the tentative signal pixels and abackground major mode for the tentative background pixels; and (bc)using pixel intensity relative to the signal major mode and thebackground major mode to reclassify the tentative signal and backgroundpixels.
 22. The method of claim 21 further comprising a step ofgenerating the digital image of the array.
 23. The method of claim 21further comprising the step of depositing the chemical material on aslide to form the array.
 24. The method of claim 21, the tentativesignal and background pixels being reclassified by selecting betweenclassifications of contamination, signal, background and undetermined.25. The method of claim 24, further comprising the step of finallyclassifying as contamination pixels the undetermined pixels that are notspatially directly adjacent to a signal pixel and are not spatiallyadjacent to a signal pixel via other undetermined pixels.
 26. The methodof claim 24, further comprising the step of finally classifying assignal pixels the undetermined pixels that are not spatially directlyadjacent to a contamination pixel, that are not spatially adjacent to acontamination pixel via other undetermined pixels, and that are eitherdirectly or via other undetermined pixels adjacent to a signal pixel.27. The method of claim 24, further comprising the step of finallyclassifying the undetermined pixels that are spatially adjacent to botha region of contamination pixels and a region of signal pixels as signalpixels where the number of pixels in the region of contamination pixelsis less than a predetermined fraction of the number of pixels in theregion of signal pixels, and as contamination pixels where the number ofpixels in the homogeneous region of contamination pixels is at least thepredetermined fraction of the number of pixels in the homogeneous regionof signal pixels.
 28. The method of claim 27, the predetermined fractionof the number of pixels in the region of signal pixels being aboutone-third.
 29. The method of claim 21, wherein the step of determining asignal major mode for the tentative signal pixels and a background majormode for the tentative background pixels comprises the steps of: (bb1)generating a signal intensity histogram from the tentative signal pixelsand a background intensity histogram from the tentative backgroundpixels; (bb2) identifying a peak bin above the median pixel intensity inthe signal intensity histogram and a peak bin below the median intensityin the background intensity histogram; (bb3) selecting for eachhistogram a set histogram bins with pixels numbers greater than apredetermined fraction of the number of pixels in the peak bin; (bb4)removing from the set of histogram bins for each histogram, histogrambins that are not in a connected group of histogram bins that includesthe peak bin; (bb5) calculating a slope on each side of the peak bin forthe connected group of histogram bins in each histogram; (bb6) fitting aslope line on each side of the peak bin for the connected group ofhistogram bins in each histogram; and (bb7) identifying intersectionhistogram bins that intersect one of the slope lines in each histogram,the major mode for each histogram being the histogram bins between theintersect histogram bins.
 30. The method of claim 29, the predeterminedfraction of the number of pixels in the peak bin being aboutseven-tenths.
 31. The method of claim 21, the chemical materials beingnucleic acid species and the array of signals being a microarray ofsignals associated with the nucleic acid species.
 32. The method ofclaim 21, further comprising the step of determining a measure ofperformance at detecting in the digital image a center-representingpixel and an approximate radius of a signal of a chemical material,segmenting the signal, and calculating a measure of the segmentedsignal.
 33. The method of claim 32, wherein the step of determining themeasure of performance comprises measuring a spot area for the signal.34. The method of claim 33, wherein the step of determining the measureof performance comprises comparing the spot area to an area of thesignal.
 35. The method of claim 32, wherein the step of determining themeasure of performance comprises determining an ellipticity of thesignal.
 36. The method of claim 35, wherein the step of determining themeasure of performance comprises determining an orientation of theellipticity of the signal.
 37. The method of claim 32, wherein the stepof determining the measure of performance comprises determining a degreeof deviation of the signal from a circle.
 38. The method of claim 32,wherein the step of determining the measure of performance comprisesdetermining an area of contamination in a window around the segmentedsignal.
 39. The method of claim 32, wherein the step of determining themeasure of performance comprises comparing an intensity measure for thesignal with an intensity for contamination in a window around thesignal.
 40. The method of claim 32, wherein the step of determining themeasure of performance comprises measuring a variation in the backgroundmajor mode.
 41. A computer readable medium having stored therein one ormore sequences of instructions for assessing chemical materialsmanifested as an array of signals in a digital image, said one or moresequences of instructions causing one or more processors to perform aplurality of acts, said acts comprising: detecting in the digital imagea center-representing pixel and an approximate radius of an signal of achemical material; segmenting the signal; and calculating a measure ofthe segmented signal; wherein the signal is segmented by classifyingpixels within the approximate radius of the center-representing pixel astentative signal pixels and outside the approximate radius from thecenter-representing pixel as tentative background pixels, determining asignal major mode for the tentative signal pixels and a background majormode for the tentative background pixels, and using pixel intensityrelative to the signal major mode and the background major mode toreclassify the tentative signal and background pixels.
 42. The computerreadable medium of claim 41, wherein said acts further compriseselecting between classifications of contamination, signal, backgroundand undetermined in reclassifying the tentative signal and tentativebackground pixels.
 43. The computer readable medium of claim 41, whereinsaid acts further comprise finally classifying as contamination pixelsthe undetermined pixels that are not spatially directly adjacent to asignal pixel and are not spatially adjacent to a signal pixel via otherundetermined pixels.
 44. The computer readable medium of claim 41,wherein said acts further comprise finally classifying as signal pixelsthe undetermined pixels that are not spatially directly adjacent to acontamination pixel, that are not spatially adjacent to a contaminationpixel via other undetermined pixels, and that are either directly or viaother undetermined pixels adjacent to a signal pixel.
 45. The computerreadable medium of claim 41, wherein said acts further comprise finallyclassifying the undetermined pixels that are spatially adjacent to botha region of contamination pixels and a region of signal pixels as signalpixels where the number of pixels in the region of contamination pixelsis less than a predetermined fraction of the number of pixels in theregion of signal pixels and as contamination pixels where the number ofpixels in the region of contamination pixels is at least thepredetermined fraction of the number of pixels in the region of signalpixels.
 46. The computer readable medium of claim 45, the predeterminedfraction of the number of pixels in the homogeneous region of signalpixels being about one-third.
 47. The computer readable medium of claim41, wherein said act of determining a signal major mode for thetentative signal pixels and a background major mode for the tentativebackground pixels is performed by generating a signal intensityhistogram from the tentative signal pixels and a background intensityhistogram from the tentative background pixels, identifying a peak binabove the median pixel intensity in the signal intensity histogram and apeak bin below the median intensity in the background intensityhistogram, and selecting for each histogram a connected set of histogrambins that includes the peak bin that corresponds to the major mode foreach histogram.
 48. The computer readable medium of claim 47, whereinthe selection of a connected set histogram bins for each histogram isperformed by selecting for each histogram a set of histogram bins withpixels numbers greater than a predetermined fraction of the number ofpixels in the peak bin, removing from the set of histogram bins for eachhistogram, histogram bins that are not in a connected group of histogrambins that includes the peak bin, calculating a slope on each side of thepeak bin for the connected group of histogram bins in each histogram,fitting a slope line on each side of the peak bin for the connectedgroup of histogram bins in each histogram, and identifying intersectionhistogram bins that intersect one of the slope lines in each histogram,the major mode for each histogram being the histogram bins between theintersect histogram bins.
 49. The computer readable medium of claim 48,the predetermined fraction of the number of pixels in the peak bin beingabout seven-tenths.
 50. The computer readable medium of claim 41, thechemical materials being nucleic acid species and the array of signalsbeing a microarray of signals associated with the nucleic acid species.51. The computer readable medium of claim 41, wherein said acts furthercomprise determining a measure of performance at detecting in thedigital image a center-representing pixel and an approximate radius of asignal of a chemical material, segmenting the signal, and calculating ameasure of the segmented signal.
 52. A method of segmenting a signal ofa chemical material in a digital image comprising the steps of: (a)detecting in the digital image a center-representing pixel and anapproximate radius of the signal; (b) classifying pixels within theapproximate radius of the center-representing pixel as tentative signalpixels and outside the approximate radius from the center-representingpixel as tentative background pixels; (c) determining a signal majormode for the tentative signal pixels and a background major mode for thetentative background pixels; and (d) using pixel intensity relative tothe signal major mode and the background major mode to reclassify thetentative signal and background pixels.
 53. The method of claim 52, thetentative signal and background pixels being reclassified by selectingbetween classifications of contamination, signal, background andundetermined.
 54. The method of claim 53, further comprising the step offinally classifying as contamination pixels the undetermined pixels thatare not spatially directly adjacent to a signal pixel and are notspatially adjacent to a signal pixel via other undetermined pixels. 55.The method of claim 53, further comprising the step of finallyclassifying as signal pixels the undetermined pixels that are notspatially directly adjacent to a contamination pixel, that are notspatially adjacent to a contamination pixel via other undeterminedpixels, and that are either directly or via other undetermined pixelsadjacent to a signal pixel.
 56. The method of claim 53, furthercomprising the step of finally classifying the undetermined pixels thatare spatially adjacent to both a region of contamination pixels and aregion of signal pixels as signal pixels where the number of pixels inthe region of contamination pixels is less than a predetermined fractionof the number of pixels in the region of signal pixels, and ascontamination pixels where the number of pixels in the homogeneousregion of contamination pixels is at least the predetermined fraction ofthe number of pixels in the homogeneous region of signal pixels.
 57. Themethod of claim 56, the predetermined fraction of the number of pixelsin the region of signal pixels being about one-third.
 58. The method ofclaim 52, wherein the step of determining a signal major mode for thetentative signal pixels and a background major mode for the tentativebackground pixels comprises the steps of: (ca) generating a signalintensity histogram from the tentative signal pixels and a backgroundintensity histogram from the tentative background pixels; (cb)identifying a peak bin above the median pixel intensity in the signalintensity histogram and a peak bin below the median intensity in thebackground intensity histogram; and (cc) selecting for each histogram aconnected set of histogram bins that includes the peak bin thatcorresponds to the major mode for each histogram.
 59. The method ofclaim 58, wherein the step of selecting for each histogram a connectedset of histogram bins that includes the peak bin that corresponds to themajor mode for each histogram comprises the steps of: (cc1) selectingfor each histogram a set of histogram bins with pixels numbers greaterthan a predetermined fraction of the number of pixels in the peak bin;(cc2) removing from the set of histogram bins for each histogram,histogram bins that are not in a connected group of histogram bins thatincludes the peak bin; (cc3) calculating a slope on each side of thepeak bin for the connected group of histogram bins in each histogram;(cc4) fitting a slope line on each side of the peak bin for theconnected group of histogram bins in each histogram; and (cc5)identifying intersection histogram bins that intersect one of the slopelines in each histogram, the major mode for each histogram being thehistogram bins between the intersect histogram bins.
 60. The method ofclaim 59, the predetermined fraction of the number of pixels in the peakbin being about seven-tenths.
 61. The method of claim 52, the chemicalmaterials being nucleic acid species and the array of signals being amicroarray of signals associated with the nucleic acid species.
 62. Themethod of claim 52, further comprising the step of determining a measureof performance at detecting in the digital image a center-representingpixel and an approximate radius of a signal of a chemical material,segmenting the signal, and calculating a measure of the segmentedsignal.